{
    // 字面量类型
    let num: 18 = 18
    num
    let str: 'jack' = 'jack'
    str
    // 类型推断出来 就是number 因为let声明的数字类型 还可以改成其他数字
    let num2 = 19
    num2
    // 类型推断出来 就是20（字面量类型）因为const声明的变量 是不能修改的
    const num3 = 20
    num3
    let arr: ['a'] = ['a']
    arr

    // 应用场景 其实挺多的 字面量类型一般配合联合类型使用 一组明确的可选的值 这样才有意义，而且有更好的代码提示(英语薄弱的小伙伴会非常喜欢)
    let gender: '男'|'女' = '男'
    gender = '女'
    gender

    // 改变方向的方法 参数dir 他只能传 left up down right
    // 相比 string类型 使用字面量类型更加精确、严谨
    type Direction = 'left' | 'up' | 'down' | 'right'
    function changeDirection (dir: Direction) {
        console.log(dir);
    }
    changeDirection('down')
    changeDirection('right')
    changeDirection('up')

}


export { }
